Skip to content

[#534] TodoEditor에서 Todo를 수정하면 HomeView에서 최근 수정 섹션에 해당 Todo가 반영되지 않는 현상을 해결한다#554

Merged
opficdev merged 5 commits into
developfrom
fix/#534-homeview
Jun 7, 2026
Merged

[#534] TodoEditor에서 Todo를 수정하면 HomeView에서 최근 수정 섹션에 해당 Todo가 반영되지 않는 현상을 해결한다#554
opficdev merged 5 commits into
developfrom
fix/#534-homeview

Conversation

@opficdev
Copy link
Copy Markdown
Owner

@opficdev opficdev commented Jun 7, 2026

🔗 연관된 이슈

🎯 의도

  • TodoEditor 또는 TodoList에서 Todo 수정, 삭제, 복원이 발생했을 때 Home 화면의 최근 Todo 목록이 갱신되지 않는 문제 해결
  • 전체 Home 데이터를 다시 fetch하지 않고 Todo 변경 이벤트를 기준으로 최근 Todo 목록만 갱신하는 흐름 구성

📝 작업 내용

📌 요약

  • TodoMutationEventBus 추가
  • TodoRepositoryImpl의 Todo 수정, 삭제, 복원 성공 시 TodoMutationEvent 방출
  • Home 화면에서 TodoMutationEvent 구독 후 최근 Todo 목록 갱신
  • HomeViewCoordinator의 AsyncStream 구독 task 관리 구조 개선

🔍 상세

  • TodoMutationEventTodoMutationEventBus를 Domain 계약으로 추가
  • Data 레이어에 TodoMutationEventBusImpl 구현
  • TodoRepositoryImpl에서 updated, deleted, restored 이벤트 방출
  • Todo 생성은 최근 Todo 갱신 대상이 아니므로 mutation event 방출 대상에서 제외
  • HomeViewModelrefreshRecentTodos 액션 추가
  • HomeViewCoordinator에서 Todo mutation stream 구독 후 최근 Todo만 refresh
  • 추후 다른 AsyncStream 구독 추가를 고려한 streamTasks 기반 task 관리 구조 적용
  • TodoMutationEventBusImplTests, TodoRepositoryImplTests로 event bus 전달과 repository 방출 검증

📸 영상 / 이미지 (Optional)

@opficdev opficdev self-assigned this Jun 7, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces the TodoMutationEventBus to publish and observe todo mutation events (updated, deleted, restored), allowing the HomeViewCoordinator to refresh recent todos dynamically. The feedback suggests ensuring that the event bus is registered as a singleton in the DI container to guarantee proper event delivery, and adding a guard check to break the asynchronous event stream loop in HomeViewCoordinator when self is deallocated.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread Application/DevLogData/Sources/DataAssembler.swift
@opficdev opficdev changed the title [#534] TodoEditor에서 Todo를 수정하면 HomeView에서 최근 수정 섹션에 해당 Todo가 반영되지 않는 현상을 해결한 [#534] TodoEditor에서 Todo를 수정하면 HomeView에서 최근 수정 섹션에 해당 Todo가 반영되지 않는 현상을 해결한다 Jun 7, 2026
@opficdev opficdev merged commit 3609008 into develop Jun 7, 2026
5 checks passed
@opficdev opficdev deleted the fix/#534-homeview branch June 7, 2026 05:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TodoEditor에서 Todo를 수정하면 HomeView에서 최근 수정 섹션에 해당 Todo가 반영되지 않는 현상을 해결한다

1 participant